package cn.edu.lcu.cs.javateaching.clazz;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Random;

/**
 * 编写一个随机数工具类，添加一个静态方法，生成 [low, high) 之间的随机整数，low与high都是方法的整型参数。
 * 
 * @author Ling
 *
 */
public class RandomTools {

	static Random random = new Random();

	public static int method(int low, int high) {
		int i = random.nextInt(high);
		if (i >= low)
			return i;
		else
			return method(low, high);
	}

	public static void main(String[] args) {
		List<Integer> integers = new ArrayList<Integer>();
		Map<Integer, Integer> map = new HashMap<Integer, Integer>();
		// 循环生成随机数，并统计各数生成的次数
		for (int i = 0; i < 50000; i++) {
			int r = method(50, 100);
			if (map.get(r) != null) {
				map.put(r, (Integer) map.get(r) + 1);
			} else {
				map.put(r, 1);
			}
		}
		map.forEach((k, v) -> System.out.println(k + "\t" + v));

	}

}
